package com.cloudfun.campusshare.common.model.dto;

import com.cloudfun.campusshare.common.constant.ContactType;
import lombok.Data;

/**
 * @author : zhangyongjie
 * @version : 1.0
 * @createTime : 2021/3/17 13:54
 * @description : 慧收钱商户(企业)进件DTO
 */
@Data
public class HsqMerchantRegister4OrgDTO {
    /**
     * 进件唯一请求号 必填
     */
    private String transNo;

    /**
     * 商户全称 必填
     */
    private String merchantName;

    /**
     * 商户简称  该名称是显示给消费者看的商户名称
     * 必填
     */
    private String merchantShortName;

    /**
     *
     * 联系邮箱，必填
     */
    private String email;
    /**
     * 客服电话
     * 方便客户在必要时能联系上商家，会在支付详 情展示给消费者
     * 必填
     */
    private String servicePhone;

    /**
     * 经营类目
     * 必填。
     */
    private String industryType;

    /**
     * 企业/个体证件类型
     * 默认营业执照，NATIONAL_LEGAL营业执照
     * NATIONAL_LEGAL_MERGE营业执照(多证合一)
     * INST_RGST_CTF事业单位法人证书
     */
    private String merchantIdType;

    /**
     * 企业/个体证件编号
     * 必填
     */
    private String businessLicense;

    /**
     * 是否为个体工商户
     * 非必填
     */
    private String selfEmployed;
    /**
     * 门店编号
     */
    private String subMerchantNo;



    /**
     * 通知地址
     * 送后则通过该地址主动通知结果
     * https://xxx.com/notify
     */
    private String returnUrl;

    /**
     * 报备类型集合
     * JSON 集合 ,(非必填)
     */
    private String storeReportTypeList;

    @Data
    public static class StoreReportTypeList {
        /**
         * 报备类型
         * 1 微信 2支付宝 3云闪付
         * 必填
         */
        private String storeReportType;

        /**
         * 预留字段
         * JSON
         */
        private String extend;
    }


    /**
     * 地区编码
     * 必填
     */
    private String districtCode;


    /**
     * 地址
     * 必填
     */
    private String address;



    /**
     * 经度
     * 非必填
     */
    private String longitude;

    /**
     * 纬度
     * 非必填
     */
    private String latitude;

    /**
     * 法人姓名
     * 必填
     */
    private String legalName;
    /**
     * 法人证件类型
     * 默认身份证 非必填
     */
    private String legalIdcardType;

    /**
     * 法人证件号码
     * 必填
     */
    private String legalIdcardNo;

    /**
     * 手机
     * 必填
     */
    private String legalPhone;


//----------------------联系人信息---------------------------------
    /**
     * 联系人姓名
     * 联系人类型为法人时与法人信息一致
     */
    private String   contactName;
    /**
     * 联系人手机号
     * 联系人类型为法人时与法人信息一致
     */
    private String   contactPhone;
    /**
     * 联系人证件类型
     * 联系人类型为法人时与法人信息一致
     */
    private String   contactIdcardType;
    /**
     * 联系人证件号
     * 联系人类型为法人时与法人信息一致
     */
    private String   contactIdcardNo;

    /**
     * 联系人类型
     * 默认法人，LEGAL_PERSON:法人
     * CONTROLLER:实际控制人
     * AGENT:代理人
     * OTHER:其他
     */
    private ContactType contactType;
    /**
     * 支付宝账号
     * 支付宝账号开通支付宝支付时必填
     */
    private String contactLogonId;
    /**
     * 微信账号开通微信支付时必填
     */
    private String contactWeChatId;

// -----------------------银行卡信息------------------------

    /**
     * 银行卡户名类型
     * 取值：
     * 1：企业名称（商户全称）；
     * 2：法人姓名；
     * 说明：该值暂时只能支持个体工商户
     */
    private String cardNameType;
    /**
     * 银行卡号
     * 开户人与负责人一致
     * 必填
     */
    private String bankCardNo;

    /**
     * 开户行行号
     * 必填
     */
    private String cnapsNo;


//---------------影像资料--------------------------------------
    /**
     * 法人身份证正面
     * 必填
     * 对应资质文件上传接口返回的fileId
     */
    private String idCardFrontImg;

    /**
     * 法人身份证反面
     * 必填
     * 对应资质文件上传接口返回的fileId
     */
    private String idCardBackImg;


    /**
     * 门头照
     * 对应资质文件上传接口返回的fileId
     */
    private String storeImg;

    /**
     * 营业场所照片
     * 对应资质文件上传接口返回的fileId
     */
    private String placeImg;

    /**
     * 企业/个体证件类型照
     * 必填
     * 对应资质文件上传接口返回的fileId
     */
    private String businessLicenseImg;


    /**
     * 开户许可证
     * 对应资质文件上传接口返回的fileId
     */
    private String bankLicenseImg;

    /**
     * 平台协议
     * 对应资质文件上传接口返回的fileId
     */
    private String protocolImg;


    /**
     * 其它图片
     * 最多支持六张多个逗号（,）隔开对应资质文件上传接口返回的fileId
     */
    private String otherImgs;

    /**
     * 扩展字段
     */
    private String extend1;
}
